Accumulating bindings
نویسنده
چکیده
We give a Haskell implementation of Filinski’s normalisation by evaluation algorithm for the computational lambda-calculus with sums. Taking advantage of extensions to the GHC compiler, our implementation represents object language types as Haskell types and ensures that type errors are detected statically. Following Filinski, the implementation is parameterised over a residualising monad. The standard residualising monad for sums is a continuation monad. Defunctionalising the uses of the continuation monad we present the binding tree monad as an alternative.
منابع مشابه
Tensor Product Variable Binding and the Representation of Symbolic Structures in Connectionist Systems
A general method, the tensor product representation, is defined for the connectionist representation of value~variable bindings. The technique is a formalization of the idea that a set of value~variable pairs can be represented by accumulating activity in a collection of units each of which computes the product of a feature of a variable and a feature of its value. The method allows the fully d...
متن کاملPython bindings for libcloudph++
This technical note introduces the Python bindings for libcloudph++. The libcloudph++ is a C++ library of algorithms for representing atmospheric cloud microphysics in numerical models. The bindings expose the complete functionality of the library to the Python users. The bindings are implemented using the Boost.Python C++ library and use NumPy arrays. This note includes listings with Python sc...
متن کاملAttentional control of the creation and retrieval of stimulus-response bindings.
Two experiments studied the degree to which the creation and retrieval of episodic feature bindings is modulated by attentional control. Experiment 1 showed that the impact of bindings between stimulus and response features varies as a function of the current attentional set: only bindings involving stimulus features that match the current set affect behavior. Experiment 2 varied the time point...
متن کاملMechanized metatheory revisited
Proof assistants and the programming languages that implement them need to deal with a range of linguistic expressions that involve bindings. Since most mature proof assistants do not have built-in methods to treat this aspect of syntax, they have been extended with various packages and libraries that allow them to encode such syntax using, for example, de Bruijn numerals and nominal logic feat...
متن کاملBB20 c
A ABS Supplies, tool makers [16] 32-38, 63 Account books, [9] 9-11 Adams and Harrison, [6] 47 Adams, Katharine, [8] 60, [11] 15-24 bindings: Brief History of Printing, [11] 16* Oeuvres de Sully, [11] 16* The Aims of Art, [11] 16* Adams, Keith [14] 43 Adelman, Cathy bindings: Proverbs of Erasmus [15] 18* Zeichnungen 35, 36* Adhesives, [1] 9, [12] 31, [17] 46-48 Aerolinen, [13] 75 Aesop’s binder ...
متن کامل